<?
if (!isset($_REQUEST['fichier'])) 
{ 
//*********************************************************************************************************************
//******************* DEMANDE LE NOM DU FICHIER A IMPORTER  **********************
//*********************************************************************************************************************
?>
	Nom du fichier csv a importer dans la table grille américaine :<br />
	<form action="importation.php" method="post">
	<input name="fichier" type="text" value="" size="50" maxlength="50">
	<br />
	<input type="submit" value="Importer" />
	</form>
<?
}
else
{
include("inc/_connect.php");
//*********************************************************************************************************************
//******************* REALISE L IMPORTATION DEPUIS UN FICHIER TEXTE CSV SEPARATEUR POINT-VIRGULE **********************
//*********************************************************************************************************************
$fichier="csv/".$_POST['fichier'].".csv"; // récuperation du NOM DU FICHIER CSV 
$handle = fopen("$fichier", "r"); // ouverture du fichier
if ($handle!=false)
{
	//RECUPERATION DES 3 PREMIERES LIGNES 
	if (($ligne = fgets($handle, 4096)) !== FALSE) //nom du tournoi
	{ 
		$nom=str_replace(';','',$ligne);
		echo("Nom du tournoi : $nom </br>");
	} else {echo('Erreur nom');};
	
	if (($ligne = fgets($handle, 4096)) !== FALSE) //description
	{ 
		$desc=str_replace(';','',$ligne);
		echo("Description : $desc </br>");
	} else {echo('Erreur desc');};
	
	if (($ligne = fgets($handle, 4096)) !== FALSE) //entete des colones
	{ 
		echo("colonnes brutes : $ligne </br>");		
		$col=str_replace('Pl;;','Pl,t,',$ligne);
		$col=str_replace(';',',',$col); 
		$col=str_replace('.','',$col);
		$col=trim($col);
		$last=$col[strlen($col)-1];
		if ($last==',') 
		{
			$col=substr($col,0,-1);
		}; 
		echo("colonnes modifiées : $col </br>");
	} else {echo('Erreur colonne</br>');};
	
	//suppression des caractères a problème
	$nomp=addslashes($nom);
	$descp=addslashes($desc);
	$colp=addslashes($col);
	//insertion dans la table tournoi
	$query="INSERT INTO ga_tournois (NOM_T,DESC_T,COL_T) values ('$nomp','$descp','$colp')";
	if (!mysql_query($query)) 
	{
		echo "ERREUR lors de $query : ". mysql_error()."<br><br>";
		die('die');
	}
	else 
	{
		$id_t=mysql_insert_id(); //récupération de id tournoi
		echo("ID du tournoi : $id_t </br>");
	}	
		
	$row = 0;
	$champs="ID_T,"; // ajout du champs id tournoi
		
	// colonnes a insérer
	$data =explode(",",$col);
	$num = count($data); 	//nombre de colonne a insérer
	
	echo("Nombre de colonne : $num</br>");
	$numd = $num+1; 		// + ID_T
	for ($c=0; $c < $num-1; $c++) {
		if (($data[$c]=='')&&($c==1)) {$data[$c]='t';} //la colonne 2 est normalement attribué au titre
		$data[$c]=str_replace('.','',$data[$c]); //suppression des . en fin d'abéviation
		$champs=$champs.$data[$c].","; // ajout du nom du champs
	}
	$data[$num-1]=str_replace('.','',$data[$num-1]);//suppression des . en fin d'abéviation du dernier champs
	$champs=$champs.$data[$num-1];// ajout du dernier champs sans , a la suite
	
	echo("Insertion de la grille <b>$fichier</b> des champs <b>$champs</b></br>");
//*********************************************************************************************************************
//****************************** LECTURE DES DONNEES ******************************************************************		
//*********************************************************************************************************************
	while (($data = fgetcsv($handle, 4096, ";")) !== FALSE) {
		$num = count($data); 	// NOMBRE DE CHAMP
		$row++;					// NUMERO DE LA LIGNE
		$valeurs="$id_t,";
		for ($c=0; $c < $num-1; $c++) 
		{
			$valeurs=$valeurs."'".addslashes($data[$c])."',";
		}
		if ($num<$numd)			//s'il manque un champs car parfois excel rajoute des ; en fin de ligne
		{
			$valeurs=$valeurs."'".addslashes($data[$num-1])."'";
		}
		else					//sinon on supprime la dernière virgule
		{
			$valeurs=substr($valeurs,0,-1);
		}
//*********************************************************************************************************************
//*************************** INSERTION DES DONNEES *******************************************************************
//*********************************************************************************************************************
		$query = "insert into ga_lignes ($champs) values ($valeurs)";
		if (!mysql_query($query)) 
		{
			// EN CAS D ERREUR ON SUPPRIME LES LIGNES DEJA INSEREES ET LE TOURNOI
			echo "ERREUR sur la ligne $row : <br>$query<br>". mysql_error()."<br><br>";
			$query = "DELETE FROM ga_lignes WHERE ID_T=$id_t";
			if (!mysql_query($query))
			{
				echo ('ECHEC ! Suppression des lignes déjà insérées</br>');
			}
			$query = "DELETE FROM ga_tournois WHERE ID_T=$id_t";
			if (!mysql_query($query))
			{
				echo ('ECHEC ! Suppression du tournoi</br>');
			}
			die('DIE :-(');
		}		
	}
	fclose($handle);
	$query = "UPDATE ga_tournois SET NBJ_T=$row WHERE ID_T=$id_t";
	if (!mysql_query($query))
			{
				echo ('ECHEC ! modification du nombre de joueurs</br>');
			}
	?>
	<br>
	Importation terminée, <b><?=$row?></b> lignes insérées.
	</br>
	</br>
	<b><a href="afficheGA.php?id_t=<?=$id_t?>">Afficher ce tournoi</a></b>
	</br>
	</br>
	<a href="importation.php">Effectuer une autre importation</a>
<?

}
else
{
	echo("Erreur lors de l'ouverture du fichier $fichier");
}
}
?>



